function NextDivNode(oIndicator)
{
	//nodeType of 3 is text (includes blank spaces in firefox)

	var oNode=oIndicator.nextSibling;

	while (oNode)
		if (oNode.tagName=='DIV')
			break;
		else
			oNode=oNode.nextSibling;

	return oNode;
}

function FirstIMGChild(oIndicator)
{
	//nodeType of 3 is text (includes blank spaces in firefox)

	var oNode=oIndicator.childNodes[0];

	while (oNode)
		if (oNode.nodeType!=3)
			break;
		else
			oNode=oNode.nextSibling;

	return oNode;
}

function toggle(oIndicator,varOpen,varClose)
{
	var oNode=NextDivNode(oIndicator);

	//Change indicator image and hide/show nodes
	var oImage=FirstIMGChild(oIndicator);
	
	if (oNode.style.display!='none')
	{
		oImage.src=varClose;
		oNode.style.display='none';
	}
	else
	{
		oImage.src=varOpen;
		oNode.style.display='';
	}
}